1. Field of the Invention
This invention relates to the field of data communications.
2. Background Art
A computer user may work with data which is found in more than one computer file. Such data may be found in related but separate computer files, or in documents which are in fact comprised of several files. Some documents appear as a single file when displayed, but are composites of several separate but linked files. For example, so called World Wide Web pages (WWW pages or web pages) may in fact consist of separate text, image, and/or multimedia files. Further, a web site might consist of several web pages. Herein, such data is referred to as multi-part files. Currently there are disadvantages in working with such multi-part files. For example, it is difficult to transfer multi-part files from computer to computer. The disadvantages can be understood by a review of the transfer of multi-part files.
A computer user can transfer files to another computer user using any of many well known systems, such as electronic mail (e-mail), file sharing, network transfers, removable media, downloading, File Transfer Protocol (FTP) and others. Alternatively, a computer user may desire to make it easier to use multi-file documents on a computer without transfer.
Currently, multi-part files are stored on a computer as separate files in one or more file directories. To use a multi-part file, all of the individual files must be identified and located. Often, there is no way to tell from the directory of files which files may be part of a multi-part file. Some extra knowledge on the part of the user is presupposed. Alternatively, all associated files of a multi-part file may be in their own directory or subdirectory. To transfer the multi-part file, all of the individual files must be identified, located and moved together. The multi-part file may then be transferred by copying or loading the multi-part file onto removable media and transferring the removable media to another computer system, by downloading the file from a server, by sharing the file over a network, by allowing the file to be accessed or downloaded using FTP, or by sending it as an attachment via e-mail.
An e-mail message may be analogized to a posted letter or piece of mail. However, instead of a physical object that is itself physically transported from a sender to a receiver, an e-mail message is an electronic representation that is communicated electronically through a communications network. Examples of communications networks used for communicating e-mail messages include, but are not limited to, tel-com networks, wide area networks (WANs), local area networks (LANs), the Internet, the World Wide Web (WWW), intranets, extranets, wireless networks, and other networks over which electronic, digital, and/or analog data may be communicated.
E-mail messages are created, sent, received, and read using a communications program, often referred to as a "mail" or "e-mail" application program. An image of an interface of one e-mail program is illustrated in FIG. 2. The example is the interface of the mail module of Netscape Communicator, an internet browser application. The interface consists of a window 200 with a row of control buttons 201-210 across the top, headers 212-215 below the buttons, and a field that displays a list of messages. In the example of FIG. 2, the list indicates a single message 216 represented by an icon with adjacent text indicating the subject, namely "Meeting on the 20th", from "Sender" and created at 9:20 PM.
The buttons are used to create and modify messages. Button 201, "Get Msg" is used to open a message that has been selected in the list (messages can also be opened by double clicking on them). Button 202, "New Msg" is used to create a new message form that can be completed and mailed to a receiver. "Reply" button 203 is used to generate a reply form to a message that is currently in view. When activated, a message form is generated that has as its address the address of the sender of the message being viewed. Optionally, the reply message may include the entire text of the sender's message. "Forward" button 204 generates a message form that includes the sender's message, but with a blank address, so that the message may be optionally annotated and forwarded to another receiver.
Button 205, "File", is used to save a message into a file in a text or other format. Button 206, "Print", is activated to print the message on an attached printer. "Security" button 208 activates security options for a message such as encryption, use of a digital certificate, or digital signature features, for example. Messages can be deleted by the "Delete" button 209. "Stop" button 210 is used to interrupt or stop operations.
Headers above the message list indicate such information as "Subject" 212, "To/From" 213, "Date" 214, and "Priority" 215. Messages in the list can be sorted by subject, by sender or receiver, by ascending or descending date, by urgency, or by any combination thereof.
An e-mail message generated using the example mail program of FIG. 2 is illustrated in FIG. 3. The e-mail message 216 includes a palette of buttons 301-306, along with buttons 208 and 210 from FIG. 2. An address field 307 indicates that the message is being sent to "Receiver@receiver.com". A subject field 308 shows the subject as "Meeting on the 20th". The body of the message is displayed in field 309.
The "Send" button 301 is activated to initiate the transmission of the message from the sender to the receiver. The "Quote" button 302 is used to insert the body of the text from a previous message into the body 309 of a current message. The "Address" button 303 prompts the sender to enter an address of the receiver or to select an address from some stored address book. The "Spelling" button 305 performs a spell check on the message text, and the "Save" button 306 is used to save a message as a text file.
The "Attach" button 304 is used to attach one or more electronic files to the e-mail message. The operation of the "Attach" feature in sending and receiving messages illustrates disadvantages and limitations of the prior art. Often a sender wishes to send one or more files to a receiver. One method of sending a file to a receiver would be to copy the information from the file (e.g. the text from a text file) and paste that information into the message field 309 of an e-mail message. If the file is large, this may not be possible. Some e-mail systems have limitations on the size of the body of an e-mail message so that some files may be too large to be entered into the body of an e-mail message. In other cases, the files represent non-text data, such as sound, images, or movies, for example, that cannot be easily pasted into an e-mail message. In such circumstances, the attach feature is used.
When the attach button 304 is activated, a dialogue box appears that allows the sender to navigate through a file system and select files to be attached to the e-mail message. After one or more files are selected, the sender transmits the e-mail message and attached file(s) to a receiver. When the receiver reads the message, there is an indicator that one or more files are attached. The receiver activates the attach button and is presented with a dialogue box that enables the receiver to retrieve the attached file or files and place them somewhere in the receiver's file system.
A problem with this prior art scheme occurs when sending multi-part files. An example of a multi-part file is a set of hypertext pages created, for example, using hyper-text mark-up language (html). Information on the World Wide Web is presented as html pages. A web site may have one or more html pages that are linked to each other through html links. A user can navigate through the pages by activating the links. In many cases, dozens of html pages are linked to each other and form a related presentation of data. Each html page is comprised of one or more separate files in a file system. To send such linked pages using e-mail, each page is attached to an e-mail message for sending to a receiver. In some cases, the multiple pages are concatenated into a single compressed file to reduce the size of the material to be transmitted from a sender to a receiver.
When an e-mail message with a compressed multi-part file is received, the receiver first retrieves the compressed attachment and places it in the receiver's file system. The receiver must then find the retrieved compressed file, initiate a decompressing program, and after decompressing the attachment, place the multiple decompressed files in the receiver's file system.
To view or use the files, the receiver activates a program capable of reading the multi-part files. In the case of html files, an internet browser such as Netscape Navigator or Microsoft Explorer may be used. The receiver must then use the open file command of the browser to locate a starting page of the multi-part file. To link to other pages in the multi-part file, it may be again necessary to use the open file command, eliminating one of the advantages of linked html files. Another problem is that when a user wishes to delete multi-part files, it is necessary to find and delete each individual file.
U.S. patents
A number of U.S. patents are related to e-mail and messaging systems and are described below:
U.S. Pat. No. 5,710,883 to Hong is directed to a method for publishing a hypertext file on a word wide web server machine by packaging the hypertext file set as an e-mail message on a client machine, transporting the e-mail message over the internet from the client machine to the word wide web server machine, unpacking the e-mail message to recover the hypertext and storing the hypertext file into a memory means on the word wide web server machine. The system is used to remotely update information at a world wide web site.
Boaz, U.S. Pat. No. 5,333,266, is directed to a method and apparatus for message handling in computer systems. The system of Boaz integrates mail from a plurality of mail servers handling messages of different media types such as text, voice, facsimile, video, and image.
U.S. Pat. No. 5,572,643 to Judson describes a method for browsing the world wide web. The system of Judson inserts status or other information when world wide web pages are being loaded.
U.S. Pat. No. 5,643,005 to Matsuo is directed to a system for message switching in an e-mail system. The system is a rules based system that checks a processing condition for processing mail messages and message contents.
Bobo, U.S. Pat. No. 5,675,507 is a message storage and delivery system. The system receives fax, voice, and data messages. Messages are stored in memory and converted into appropriate hypertext markup language files. Users are notified by e-mail when a message is in the storage system.
U.S. Pat. No. 5,706,434 to Kremen is directed to a system for creating and serving data objects among various communications protocols. A request decoder receives an incoming request, decodes the request using configuration from a configuration database.
Lagarde, U.S. Pat. No. 5,710,918 describes a method for providing web server agents on a browser client. Distributed integration solution servers execute selected capsule objects which perform programmable mass functions upon a received command.